package modelo.entidad;

import java.io.Serializable;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

@Entity
@Table(name="zona",schema="public")
@PrimaryKeyJoinColumn(name="id")
public class Zona implements Serializable {

	
	 @Id    
	 @SequenceGenerator(name="SeqId", sequenceName="public.zona_id_seq", allocationSize=1)	
	 @GeneratedValue(generator="SeqId")
	 private int id;
	 
	@ManyToOne(cascade = CascadeType.ALL)
	@JoinColumn(name="id_municipio") 		
	private Municipio municipio;
	 
	@Column(name="nombre")
	private String nombre;
	 
	
	@OneToMany(cascade= CascadeType.ALL)
	@JoinColumn(name="id_zona")
	
	private List<Inmueble> inmuebles;
	
	 
	public Zona(String nombre, Municipio municipio){
		this.nombre =nombre;
		this.municipio = municipio;
	}
	
	public Zona() {
		super();
		// TODO Auto-generated constructor stub
	}
	
	
	public int getId() {
		return id;
	}
	public void setId(int codigo) {
		this.id = codigo;
	}
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
    
	public Municipio getMunicipio() {
		return municipio;
	}

	public void setMunicipio(Municipio municipio) {
		this.municipio = municipio;
	}

	public List<Inmueble> getInmuebles() {
		return inmuebles;
	}

	public void setInmuebles(List<Inmueble> inmuebles) {
		this.inmuebles = inmuebles;
	}
	
}
